Integración Checkout
Integrar SiPago Checkout te permite cobrar a través de nuestro formulario web desde cualquier dispositivo
de manera simple, rápida y segura.
1. Generar intención de pago
Este paso deberás realizarlo desde tu backend.
Si todavía no generaste el JWT para autenticarte podés ver la
sección Requisitos para integrar
A través de un POST a {base_url}/api/v2/orders
se creará la intención de pago.
Consultar {base_url}
en la sección Ambientes/Checkout.
- php
- node
- curl
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'https://{base_url}/api/v2/orders',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS =>'{
"data": {
"attributes": {
"redirect_urls": {
"success": "https:\\/\\/dominio.com\\/?ref=ok",
"failed": "https:\\/\\/dominio.com\\/?ref=fallo"
},
"currency": "032",
"shipping": {
"name": "Precio fijo",
"price": {
"currency": "032",
"amount": 2000
}
},
"items": [{
"id": 31,
"name": "Silla Eames Base Madera",
"unitPrice": {
"currency": "032",
"amount": 1000
},
"quantity": 1
}]
}
}
}',
CURLOPT_HTTPHEADER => array(
'Authorization: Bearer XXXXXX',
'Content-Type: application/vnd.api+json'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
var request = require('request');
var options = {
'method': 'POST',
'url': 'https://{base_url}/api/v2/orders',
'headers': {
'Authorization': 'Bearer XXXXXX',
'Content-Type': 'application/vnd.api+json'
},
body: JSON.stringify({
"data": {
"attributes": {
"redirect_urls": {
"success": "https://dominio.com/?ref=ok",
"failed": "https://dominio.com/?ref=fallo"
},
"currency": "032",
"shipping": {
"name": "Precio fijo",
"price": {
"currency": "032",
"amount": 2000
}
},
"items": [
{
"id": 31,
"name": "Silla Eames Base Madera",
"unitPrice": {
"currency": "032",
"amount": 1000
},
"quantity": 1
}
]
}
}
})
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
curl --location --request POST 'https://{base_url}/api/v2/orders' --header 'Authorization: Bearer XXXXXX' --header 'Content-Type: application/vnd.api+json' --data-raw '{
"data": {
"attributes": {
"redirect_urls": {
"success": "https://dominio.com/?ref=ok",
"failed": "https://dominio.com/?ref=fallo"
},
"currency": "032",
"shipping": {
"name": "Precio fijo",
"price": {
"currency": "032",
"amount": 2000
}
},
"items": [{
"id": 31,
"name": "Silla Eames Base Madera",
"unitPrice": {
"currency": "032",
"amount": 1000
},
"quantity": 1
}]
}
}
}'
2. Agregá el Checkout a tu sitio
Con la intención de pago generada en el paso anterior, en tu frontend puedes agregar el link del Checkout en tu sitio en
el lugar que quieras que aparezca.
<!doctype html>
<html>
<head>
<title>Pagar</title>
</head>
<body>
<a href="<?php echo $order->data->links->checkout; ?>">Pagar con SiPago</a>
</body>
</html>
Recorda que la intencion de pago tiene una duracion de 10 minutos.
3. Pago
Ya terminamos la integración. Ahora el comprador podrá continuar con el flujo en nuestro Checkout web.